Radio-station-recommendation system and method

ABSTRACT

A method of recommending radio stations including the step of generating a plurality of driver models. Each driver model may correspond to a different driver and documents audio content listened to by that driver while driving. The plurality of driver models may be aggregated to generate a recommendation model correlating radio stations, audio content, and geographic regions. Thereafter, a request for recommendations may be received from a driver while the driver is in a familiar or unfamiliar geographic region. A driver model corresponding to the driver may be compared against other data contained within the recommendation model in order to identify one or more radio stations that present audio content within the geographic region that best matches the audio content documented within the driver model corresponding to the driver. The one or more radio stations may then be communicated to the driver.

RELATED APPLICATIONS

This application claims the benefit of PCT Application Serial No.PCT/US2015/046331, filed Aug. 21, 2015, which is hereby incorporatedherein by reference in its entirety for all purposes.

BACKGROUND Field of the Invention

This invention relates to infotainment systems and more particularly tosystems and methods for recommending radio stations to a driver whenthat driver is driving in familiar or unfamiliar geographic regions.

Background of the Invention

When a driver is driving in his or her local area, he or she is familiarwith the local radio stations and may have certain favorites. The driveris also likely aware of the time when his or her favorite radio showsare being broadcast. However, when the driver is travelling in a newarea, he or she may be required to go through the tedious process offinding a suitable radio station or show. Moreover, should the driverfind suitable content in the first few searches, the content may soonend and the driver may again be searching for suitable content. Thisprocess may be distracting for the driver. Accordingly, what is neededis a system and method for finding suitable audio content in variousgeographical regions.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the invention will be readilyunderstood, a more particular description of the invention brieflydescribed above will be rendered by reference to specific embodimentsillustrated in the appended drawings. Understanding that these drawingsdepict only typical embodiments of the invention and are not thereforeto be considered limiting of its scope, the invention will be describedand explained with additional specificity and detail through use of theaccompanying drawings, in which:

FIG. 1 is a schematic diagram illustrating a recommendation system inaccordance with the present invention;

FIG. 2 is a schematic block diagram of one embodiment of software thatmay be executed by the recommendation system of FIG. 1;

FIG. 3 is a schematic block diagram illustrating various aspects of oneembodiment of the content-characterization module of FIG. 2;

FIG. 4 is a schematic block diagram illustrating various aspects of oneembodiment of the recommendation module of FIG. 2;

FIG. 5 is a schematic block diagram illustrating various aspects of oneembodiment of the driver module of FIG. 2; and

FIG. 6 is a schematic block diagram of one embodiment of a methodcorresponding to or executed by a recommendation system in accordancewith the present invention.

DETAILED DESCRIPTION

It will be readily understood that the components of the presentinvention, as generally described and illustrated in the Figures herein,could be arranged and designed in a wide variety of differentconfigurations. Thus, the following more detailed description of theembodiments of the invention, as represented in the Figures, is notintended to limit the scope of the invention, as claimed, but is merelyrepresentative of certain examples of presently contemplated embodimentsin accordance with the invention. The presently described embodimentswill be best understood by reference to the drawings, wherein like partsare designated by like numerals throughout.

Referring to FIG. 1, a system 10 in accordance with the presentinvention may provide, enable, or support computer-based, multi-node,radio-station recommendations. A system 10 may do this in any suitablemethod. For example, a system 10 may be embodied as hardware, software,or some combination thereof.

In certain embodiments, a system 10 may include at least one remotecomputer 12 and multiple in-vehicle computer systems 14. The in-vehiclecomputer systems 14 may be distributed across multiple vehicles 16. Forexample, one in-vehicle computer system 14 may be located within eachvehicle 16 of a plurality of vehicles 16. The various in-vehiclecomputer systems 14 may communicate with the at least one remotecomputer 12 via a communication network 18.

An in-vehicle computer system 14 may include an infotainment system 20,a mobile device 22, or the like or a combination thereof. Aninfotainment system 20 may be a system installed into a vehicle 16 toprovide audio entertainment, video entertainment, navigation systems, orthe like or a combination or sub-combination thereof. In selectedembodiments, an infotainment system 20 may comprise computer hardwareand computer software. The computer hardware of an infotainment system20 may include one or more processors, memory, a user interface, one ormore antennas, other hardware, or the like or a combination orsub-combination thereof. The memory may be operably connected to the oneor more processors and store the computer software. This may enable theone or more processors to execute the computer software.

A user interface of an infotainment system 20 may enable a user tointeract with, customize, or control various aspects of the infotainmentsystem 20. In selected embodiments, the user interface of aninfotainment system 20 may include one or more buttons, keys, touchscreens, pointing devices, or the like or a combination orsub-combination thereof.

In certain embodiments, the one or more antennas of an infotainmentsystem 20 may include an antenna for receiving local (i.e., terrestrial)radio signals, an antenna for receiving satellite radio signals, anantenna for receiving signals from a mobile device 22, an antenna thatenables the infotainment system 22 to communicate with at least oneremote computer 12 via a communication network 18 (e.g., a cellularnetwork connected to the Internet), an antenna to receive GPS signalsfrom one or more GPS satellites, or the like or a combination orsub-combination thereof.

A mobile device 22 may be a mobile telephone (e.g., a “smart” phone),tablet computer, laptop computer, personal digital assistant, or thelike. A mobile device 22 may comprise computer hardware and computersoftware. Computer hardware of a mobile device 22 may include one ormore processors, memory, a user interface, one or more antennas, otherhardware, or the like or a combination or sub-combination thereof. Thememory may store the computer software and be operably connected to theone or more processors. This may enable the one or more processors toexecute the computer software.

A user interface of a mobile device 22 may enable a user to interactwith, customize, or control various aspects of the mobile device 22. Inselected embodiments, a user interface of a mobile device 22 may includeone or more buttons, keys, touch screens, pointing devices, or the likeor a combination or sub-combination thereof.

In certain embodiments, one or more antennas of a mobile device 22 mayenable the mobile device 22 to receive and/or send signals to othercomponents or sub-systems within a system 10. For example, in selectedembodiments, a mobile device 22 may include an antenna enabling themobile device 20 to communicate with at least one remote computer 12 viaa communication network 18, an antenna for receiving signals from andsending signals to an infotainment system 20, or the like or acombination thereof. Alternatively, or in addition thereto, a mobiledevice 22 may include, an antenna to receive GPS signals from one ormore GPS satellites.

While driving in a vehicle 16, a human driver may use an in-vehiclecomputer system 14 to listen to or “consume” audio content (e.g., music,talk radio, podcasts, or other programming). For example, a driver maylisten to audio content delivered to an in-vehicle computer system 14via radio waves emanating from one or more local radio stations 24locating within a geographic region 26 in which the driver is driving.Alternatively, a driver may listen to audio content delivered to anin-vehicle computer system 14 via radio waves emanating from one or moresatellites. In other embodiments, a driver may listen to audio contentread from a computer-readable medium (e.g., compact disc, flash drive,or the like) by an in-vehicle computer system 14. In still otherembodiments, a driver may listen to audio content fed to an infotainmentsystem 20 by a mobile device 22.

For example, in selected embodiments, a communication link 28 may beestablished between a mobile device 22 and an infotainment system 20 ofa vehicle 16. In selected embodiments, this communication link 28 may bea wired pairing or wireless pairing (e.g., a wireless pairing employingUltra High Frequency (UHF) radio waves). Accordingly, audio content maybe passed over the communication link 28 from a mobile device 22 to aninfotainment system 20.

Data characterizing the audio content listened to by a driver may bepassed from an in-vehicle computer system 14 to at least one remotecomputer 12. For example, data characterizing the audio content listenedto by a driver may be passed: (1) from an infotainment system 20,through a communication network 18, to at least one remote computer 12;(2) from a mobile device 22, through a communication link 28, to aninfotainment system 20 and then from the infotainment system 20, througha communication network 18, to at least one remote computer 12; (3) froma mobile device 22, through a communication network 18, to at least oneremote computer 12; or (4) from an infotainment system 20, through acommunication link 28, to a mobile device 22 and then from the mobiledevice 22, through a communication network 18, to at least one remotecomputer 12.

By collecting data characterizing the audio content listened to by adriver, a remote computer 12 or set of remote computers 12 may determineand document the preferences of the driver. Additionally, by collectingdata characterizing the audio content listened to by a plurality ofdrivers (e.g., hundreds or thousands of drivers) located in a pluralityof geographic regions 26, a remote computer 12 or set of remotecomputers 12 may learn and document something about what audio contentis available in which geographic regions 26, on which radio stations 24,at which times, etc.

A driver may have a geographic region 26 that may be characterized as abase geographic region 26 a. A base geographic region 26 a of a drivermay be a region 26 where the driver spends the most time (e.g., the mosttime listening to audio content or driving and listening to audiocontent). In many situations, a driver may be familiar with the radioprogramming and stations that he or she prefers in his or her basegeographic region 26 a. However, should a driver travel 30 outside ofhis or her base geographic region 26 a to another geographic region 26b, the driver may not be familiar with the radio programming andstations 24 b in that new, unfamiliar geographic region 26 b.

Accordingly, when a driver would like to receive one or morerecommendations for radio stations 24, he or she may enter a request forrecommendations into an in-vehicle computer system 14. The in-vehiclecomputer system 14 may pass the request on to a remote computer 12. Aremote computer 12 may formulate an appropriate response to the requestand pass that response back to the in-vehicle computer system 14. Inselected embodiments, such a response may identify one or more radiostations 24 b located in the new, unfamiliar geographic region 26 b thathave audio content that best matches the audio content to which thedriver usually listens.

Referring to FIG. 2, a system 10 in accordance with the presentinvention may run certain software. In selected embodiments, suchsoftware may include a content-characterization module 32, arecommendation module 34, and a driver module 36. Acontent-characterization module 32 may be executed by a remote computer12, an in-vehicle computer system 14, or some combination thereof. Arecommendation module 34 may also be executed by a remote computer 12,an in-vehicle computer system 14, or some combination thereof. Incertain embodiments, the same remote computer 12 may execute both acontent-characterization module 32 and a recommendation module 34.Alternatively, different remote computers 12 may execute acontent-characterization module 32 and a recommendation module 34.

A driver module 36 may be executed by an in-vehicle computer system 14.For example, a driver module 36 may be executed by an infotainmentsystem 22, a mobile device 20, or some combination thereof. In selectedembodiments, a driver module 36 may monitor the audio content 38 that isbeing heard by a driver 40. For example, a driver module 36 may monitoraudio content 38 that is played over the speakers 42 of an infotainmentsystem 14. In order to monitor the audio content 38 listened to bymultiple drivers 40, a system 10 in accordance with the presentinvention may support and contain multiple driver modules 36. In certainembodiments, one driver module 36 may correspond to each vehicle 16 of aplurality of vehicles 16.

As it monitors the audio content 38 listened to by a driver 40, a drivermodule 36 may collect internal data 44 that may be used by acontent-characterization module 32 to identify or otherwise characterizethe audio content 38. In selected embodiments, such internal data 44 maybe passed from a driver module 36 running on an in-vehicle computersystem 14 to a content-characterization module 32 running on a remotecomputer 12.

A content-characterization module 32 may use the internal data 44collected by a driver module 36 to identify the audio content 38 beinglistened to by a corresponding driver 40. In selected embodiments orsituations, the internal data 44 may be all that is needed to identifythe audio content 38. However, in other embodiments or situations, theinternal data 44 alone may be insufficient to identify the audio content38. Accordingly, in such embodiments or situations, acontent-characterization module 32 may obtain whatever external data 46is necessary to make an appropriate identification of the audio content38.

After identifying the audio content 38 being listened to by a driver 40over some period of time, a content-characterization module 32 maygenerate a driver model 48. The driver model 48 may present a summary ofthe audio content 38 preferred by the driver 40. Acontent-characterization module 32 may continuously or periodicallyupdate a driver model 48 so that it presents an accurate and currentview of the preferences of a corresponding driver 40.

A recommendation module 34 may aggregate multiple driver models 48 toform a recommendation model 50. A recommendation model 50 may identifywhich drivers 40 listened to which radio stations 24 and which radiostations 24 play which audio content 38 in which geographic regions 26.Accordingly, should a driver 40 indicate through a driver module 36 thathe or she would like a recommendation, a recommendation module 34 mayrespond to such a request 52 with one or more recommendations 54 forradio stations 24 in the geographical region 26 currently occupied bythe driver 40. The one or more recommendations 54 may be the radiostations 24 that may best match the preferences of the driver 40. Inselected embodiments, a recommendation module 34 may obtain therecommendations 54 by comparing a driver model 48 corresponding to thedriver 40 to other data contained within a recommendation model 50.

Referring to FIG. 3, in selected embodiments, a content-characterizationmodule 32 may comprise or include a content-identification module 56 anda driver-model-generation module 58. A content-identification module 56may identify the audio content 38 listened to by one or more drivers 40.A content-identification module 56 may use internal data 44 or internaland external data 44, 46 to make the identification.

In selected embodiments or situations, internal data 44 may comprise orinclude an identification 59 of the driver 40 listening to the audiocontent 38, explicit content identification data 60, data 62characterizing when selected audio content 38 was played or heard by adriver 40, data 64 characterizing where selected audio content 38 wasplayed or heard by a driver 40, station identifications 66, data 68characterizing how much time a driver 40 spend listening to selectedstations 24 or audio content 38, other data 70, or the like orcombinations or sub-combinations thereof.

In certain embodiments, an identification 59 of the driver 40 listeningto the audio content 38 may be passed from a mobile device 22 to aninfotainment system 20 of a corresponding vehicle 16. The identification59 may be a unique (at least within a system 10) user name, number, orthe like. Accordingly, so long as a driver 40 has his or her mobiledevice 22 on his or her person and a vehicle 16 has an appropriatelyequipped infotainment system 20, a driver 40 need not be driving his orher own vehicle 16 to benefit from a system 10 in accordance with thepresent invention. Thus, a driver 40 may benefit from a system 10 whilehe or she is driving a properly equipped rental car in an unfamiliarcity.

The work performed by a content-identification module 56 may depend onthe nature of the available data 44, 46. For example, in embodiments orsituations where internal data 44 corresponding to a particular driver40 comprises explicit content identification 60, acontent-identification module 56 may not need to do much. Explicitcontent identification data 60 may include a title, album, performer,genre, or the like or combinations or sub-combinations thereof. Suchdata 60 may be available when a driver 40 is listening to satelliteradio, audio content 38 stored on a flash driver, audio content 38stored on a mobile device 22, or other situations where audio content 38is typically closely coupled with data 60 identifying the audio content38.

In selected embodiments, other data 70 may include destination data. Forexample, if a driver 40 has entered a destination into a navigationalcomponent of an in-vehicle computer system 14, that destinationinformation may be used to predict potential interests of the driver 40.Such predictions may be factored into the recommendations 54 provided bya system 10.

In other embodiments, a content-identification module 56 may need morethan internal data 44 to identify the audio content 38 listened to by aparticular driver 40. For example, in one situation, internal data 44may indicate that from 5:00 to 5:45 p.m. a particular driver 40 locatedin a first geographical region 26 listened to a first radio station 24for 60% of the time and a second radio station 24 for 40% of the time.Alone, such data 44 may be insufficient to identify the audio content 38heard by the driver 40. Accordingly, in such situations, acontent-identification module 56 may access external data 46 to fill inthe gaps.

External data 46 may be stored in a format where is may be readilyaccessed by a content-identification module 56. For example, externaldata 46 may be stored in one or more databases that may be queried by acontent-identification module 56 as needed. In selected embodiments,external data 46 may include one or more indexes 72, one or moreschedules 74, data 76 identifying the location of one or more radiostations 24, data 78 identifying the broadcast range of one or moreradio stations 24, other data 80, or the like or combinations orsub-combinations thereof.

An index 72 may identify links among various pieces of information. Forexample, an index 72 may link a particular radio station 24 to aparticular genre. Alternatively, or in addition thereto, an index 72 maylink a particular song to a corresponding album, artist, group, genre,or the like. A schedule 74 may link certain audio content 38 toparticular times of the day or week. For example, a schedule 74 mayindicate which radio stations 24 play a particular syndicated program atwhich times. A schedule 74 may also take the form of a playlistidentifying when particular audio content 38 (e.g., songs) will beplayed on a particular radio station 24.

External data 46 may be selectively combined with internal data 44 toidentify the audio content 38 listened to by a driver 40. For example,as noted above, in one situation, internal data 44 may indicate thatfrom 5:00 to 5:45 p.m. a particular driver 40 located in a firstgeographical region 26 listened to a first radio station 24 for 60% ofthe time and a second radio station 24 for 40% of the time. Accordingly,in that situation, a content-identification module 56 may use externaldata 46 to learn that the first station 24 is a sports radio stationthat plays a particular, nationally syndicated program on weekdays from5:00 to 6:00 p.m. Similarly, the content-identification module 56 mayuse external data 46 to learn that the second station 24 plays countrymusic. Accordingly, the content-identification module 56 may identifythe audio content 38 preferred by the particular driver 40.

In selected embodiments, a content-identification module 56 may employor leverage content recognition (e.g., music recognition) software,processes, or services to identify audio content 38. For example, inselected embodiments, internal data 44 may include one or more smallportions or samples of the audio content 38. These samples may bedirectly analyzed to determine the identity of the corresponding audiocontent 38. For example, a sample may be compared to a various knowaudio files to see if a match can be determined. Accordingly, if a matchis identified, the identity of the audio content 38 from which thesample was taken may be determined.

In certain embodiments, certain functionality associated with acontent-characterization module 32 may be executed by an in-vehiclecomputer system 14. For example, in selected embodiments, a portion of acontent-identification module 56 programmed to provide contentrecognition software, processes, or services, may be at least partiallyexecuted by an in-vehicle computer system 14. Such acontent-identification module 56 or portion thereof may access a remotecomputer 12 via a communication network 18 for external data 46 or thelike as necessary to support proper operation thereof.

A content-identification module 56 may identify audio content 38 atdifferent levels of granularity. For example, in certain embodiments orsituations, a content-identification module 56 may identify certainaudio content 38 heard by a particular driver 40 at a relatively high orcourse level such as by genre (e.g., country music, classic rock, popmusic, etc.). In other embodiments or situations, acontent-identification module 56 may identify certain audio content 38heard by a particular driver 40 on an intermediate level such as byartist, band, or the like. In still other embodiments or situations, acontent-identification module 56 may identify certain audio content 38heard by a particular driver 40 at a relatively detailed or fine levelsuch as by song title, album, program name (e.g., “The Rush LimbaughShow”), or the like. In selected embodiments, a content-identificationmodule 56 may identify audio content 38 to the finest granularitysupported by the data 44, 46.

A driver-model-generation module 58 may organize the contentidentifications output by a content-identification module 56 and anyother necessary data 44, 46 to produce a driver model 48. A driver model48 may characterize the listening preferences of a particular driver 40.Data presented or contained in a driver model 48 may include anidentification 81 of the driver 40 whose listening preference aredocumented in the driver model 48, titles 82 of audio content 38, namesof albums 84 in which the titles 82 are contained, performer names 86(e.g., artists, bands, talk show hosts, or the like), genres 88, namesof programs 90, times 92, stations 94, driver weightings 96, other data98, or the like or combinations or sub-combinations thereof.

A driver-model-generation module 58 may organize the data of a drivermodel 48 in any suitable manner. In certain embodiments, the manner inwhich the data is organized may be selected to facilitate theidentification of matches between the preferences of a driver 40 and theaudio content 38 available in various geographic regions 26. In selectedembodiments, a driver model 48 may comprise one or more tables showinghow various pieces of data contained in the driver model 48 relate toone another.

For example, a driver model 48 may include a table relating titles 82,albums 84, performers 86, and genres 88. One possible row for such atable may include something like “Better Than I Used to Be” for thetitle 82, “Emotional Traffic” for the album 84, “Tim McGraw” for theperformer 86, and “country” for the genre 88. Such a table may enablematching at any of these various levels of granularity.

Other tables may relate audio content 38 to driver weightings 96. Driverweightings 96 may provide an indication or measure of how strong of apreference a driver 40 may have to particular audio content 38. Forexample, a high percentage of the audio content 38 heard by a particulardriver 40 may be from one or more albums corresponding to Taylor Swift.Accordingly, certain songs and albums corresponding to Swift, as well asthe artist herself, may be weighted to reflect the preference of thedriver 40.

Various weighting systems may be employed in a system 10 in accordancewith the present invention. In selected embodiments, a system of driverweights 96 may be based on a running tally with respect to the lasthundred pieces (or any other statistically significant sample size) ofaudio content 38 listened to by a driver 40. The driver weighting 96applied may correspond or scale to how many separate pieces of audiocontent 38 of the one hundred are proportionally listened to by thedriver 40.

For example, for a simplified case, it may be supposed that all of thelast one hundred pieces of audio content 38 listened to by a driver 40may be performances by Taylor Swift that were served from a mobiledevice 22 to an infotainment system 20. If that were the case, then thegenre “pop” may be assigned a driver weight 96 of one hundred.Similarly, Swift the performer 86 may be assigned a driver weight 96 ofone hundred. If sixty percent of the pieces of audio content 38 weresongs of Swift's album entitled “1989,” then that album 84 may beassigned a driver weight 96 of sixty. The remaining forty weighting“points” may be assigned to the other Swift albums 84 that were heard inproportion to how much they were heard. One hundred weighting points mayalso be divided among the various songs 82 in proportion to how muchthey were heard. Such driver weightings 96 may enable a driver model 48to characterize or document the preferences of a corresponding driver 40as various levels of granularity.

In selected embodiments, certain tables may relate audio content 38 totime 92. That is, certain drivers 40 may listen to different audiocontent 38 at different times of the day or week. For example, aparticular driver 40 may typically listen to new programs during thetime of the weekday morning commute, but pop music during the weekdayevening commute. Accordingly, various times or “times zones” may beestablished and a driver model 48 may set forth different audio content38 and driver weightings 96 and the like for the different time zones.In selected embodiments, different time zones may include weekend,weekday early morning and morning commute, weekday morning, weekdayafternoon, Weekday early evening and evening commute, and weekdayevening.

Referring to FIG. 4, in addition to characterizing the listeningpreferences of a particular driver 40, a driver model 48 may alsoprovide a window or view into what audio content 38 is available onwhich radio stations 24 in which geographical regions 26 at which times.While such a window or view may be confined to the audio content 38 ofinterest to one driver 40, a compilation or aggregation of driver models48 from dozens, hundreds, or thousands of drivers 40 in a particulargeographic region 26 may provide an accurate view of what is availablein that region 26.

Expanding this concept further, driver models 48 from dozens, hundreds,or thousands of drivers 40 in each geographic region 26 of a pluralityof geographical regions 26 may provide an accurate view of what isavailable over a large geographic area (e.g., over an entire state ornation). Moreover, such a compilation or aggregation may indicate whichstations 24 are more popular than others. For example, a collection ofdriver models 48 from a particular geographic region 26 may indicatethat two radio stations 24 have similar audio content 38, but that oneis more popular (i.e., listened to by more drivers 40) than the other.Such popularity data may be taken into account when makingrecommendations 54.

In selected embodiments, a recommendation module 34 may comprise arecommendation-model-generation module 100, a communication module 102,and a recommendation model 50. A recommendation-model-generation module100 may compile or aggregate a plurality of driver models 48 to generatea recommendation model 50 covering a geographic region 26 or a pluralityof geographic regions 26.

A recommendation-model-generation module 100 may organize and/orgenerate the data of a recommendation model 50 in any suitable manner.In certain embodiments, the manner in which the data is organized may beselected to facilitate the identification of matches between thepreferences of a driver 40 and the audio content 38 available in variousgeographic regions 26. In selected embodiments, a recommendation model50 may comprise a plurality of driver models 48. A recommendation model50 may further comprise one or more tables relating the plurality ofdriver models 48 to one another or relating data extracted from thedriver models 48.

For example, a recommendation model 50 may include one or more tablesrelating radio stations 24 (e.g., radio station IDs 94), titles 82,performers 84, genres 86, and station weightings. Such stationweightings may provide an indication or measure of how often a radiostation 24 plays particular audio content 38. For example, a significantpercentage of the audio content 38 played by a particular radio station24 may be in the genre 86 of pop music. Accordingly, the radio station24 may be weighted to reflect the nature of the audio content 38 playedby the radio station 24.

As noted above, various weighting systems may be employed in a system 10in accordance with the present invention. In selected embodiments, asystem of station weights used in a recommendation model 50 maycorrelate well to the driver weights 96 of the driver models 48.Accordingly, in certain embodiments, the station weights of arecommendation module 50 may be based on a running tally with respect tothe last hundred pieces (or any other statistically significant samplesize) of audio content 38 played by a radio station 24. The stationweightings applied may correspond or scale to how many separate piecesof audio content 38 of the one hundred are proportionally played by theradio station 40.

For example, for a simplified case, it may be assuming that a radiostation 24 plays only pop music. If that were the case, then the genre“pop” may be assigned a weight of one hundred. If five percent of thelast one hundred pieces of audio content 38 were songs performed byTaylor Swift, Swift the performer 86 may be assigned a station weight offive. If songs from Swift's album entitled “1989” are played one percentof the time, then that album 84 may be assigned a station weight of one.The remaining ninety-nine station weighting “points” may be assigned tothe other albums 84 that were played in proportion to how often theywere played within the last one hundred pieces of audio content 38. Onehundred weighting points may also be divided among the various songs 82in proportion to how much they were played. Such station weightings mayenable a recommendation model 50 to characterize or document thepreferences of a corresponding radio station 24 as various levels ofgranularity.

In selected embodiments, certain tables of a recommendation model 50 mayrelate audio content 38 to the time 92 it is played on a radio station24. That is, certain radio stations 24 may play different audio content38 at different times of the day or week. For example, a particularradio station 24 may typically play news programs during the time of theweekday morning commute, but pop music the rest of the time.Accordingly, various times or “times zones” may be established and arecommendation model 50 may set forth different audio content 38 andstation weightings and the like for the different time zones. Inselected embodiments, different time zones for a recommendation model 50may include weekend, weekday early morning and morning commute, weekdaymorning, weekday afternoon, weekday early evening and evening commute,and weekday evening.

Additionally, in certain embodiments, a recommendation-model-generationmodule 100 may use time data 92 to accurately characterize the audiocontent 38 played on the various radio stations 24. That is, differentdriver models 48 from different drivers 40 that happen to be driving inthe same geographic region 26 may both report listening to particularaudio content 38 on a particular station 24. Time data 92 (e.g., dateand time of day) may be used to determine whether the particular audiocontent 38 was the same broadcast or a different broadcast. Accordingly,time data 92 may be used to avoid double counting the audio content 38when multiple driver models 48 document the same broadcast.

A communication module 102 may receive a request 52 for recommendations,identify suitable recommendations 54, and return those recommendations54 in response to the request 52. A request 52 in accordance with thepresent invention may comprise any necessary data. In selectedembodiments, a request 102 may include an identification 104 of thedriver 40 to whom the request 52 pertains, information 106 identifyingthe current location of the driver 40, other information 108 as desiredor necessary, or the like or any combination or sub-combination thereof.

Information 104 identifying a driver 40 may enable a communicationmodule 102 to determine which driver model 48 to use in a matchingprocess. Information 106 identifying the current location of the driver40 may enable a communication module 102 to determine which radiostations 24 are broadcasting in the geographic region 26 currentlyoccupied by the driver 40.

A matching processes performed by a communication module 102 may be aneffort to identify one or more radio stations 24 that play audio content38 most like the audio content 38 preferred by a particular driver 40.In selected embodiments, a matching process may comprise the applicationof a mathematical algorithm to identify radio stations 24 with thestrongest (e.g., highest or lowest depending on how a weighting scale isstructured) station weights for audio content 38 that has the strongestdriver weights 96 in the particular driver model 48.

For example, using the hypothetical examples set forth hereinabove, theradio station 24 that plays five percent Taylor Swift songs may be abest match to the driver module 48 documenting only Taylor Swift audiocontent 38. Both are fully directed to the genre of pop music and theradio station 24 may have the highest percentage of Taylor Swift audiocontent 38 in the geographic region 26 in which the corresponding driver40 is currently located.

In other situations, a best match may be a more direct match of audiocontent 38. For example, a particular driver model 48 may show a strongpreference for a particular, nationally syndicated talk show during thetime of the morning commute. A request 52 from a driver 40 correspondingto that driver model 48 may be received by a recommendation module 34during the time of the morning commute. The request 52 may indicate thatthe driver 40 is in an unfamiliar geographic region 26. Accordingly, acommunication module 102 may use a recommendation model 50 to identify aradio station 24 that is in the unfamiliar geographic region 26 thatplays the particular, nationally syndicated talk show during the time ofthe morning commute. That radio station 24 may then be recommended via arecommendation 54 sent to the driver 40.

A recommendation 54 in accordance with the present invention maycomprise any necessary data. In selected embodiments, a recommendation54 may include information 110 identifying one or more radio stations24, information 112 setting forth an order or rank of the identifiedradio stations 24, other information 114 as desired or necessary, or thelike or any combination or sub-combination thereof. The order or rank ofthe identified radio stations 24 may communicate how the radio stations24 may relate to one another in terms of a predicted relevance to acorresponding driver 40.

Referring to FIG. 5, in selected embodiments, a driver module 36 mayinclude a monitoring module 116 and a communication module 118. Amonitoring module 116 may monitor the audio content 38 that is beingheard by a driver 40. For example, a monitoring module 116 may monitoraudio content 38 that is played over the speakers 42 of an infotainmentsystem 14. Based on this monitoring, a monitoring module 116 may collector compile internal data 44.

A communication module 118 may assist in sending internal data 44 from adriver module 36 to a content-characterization module 32. Acommunication module 118 may send the internal data 44 at any suitabletime. In selected embodiments, a communication module 118 may sendinternal data 44 in periodic packages separated by significant periodsof time rather than in a continuous or semi-continuous stream.

In certain embodiments, a communication module 118 may send out requests52 and receive and implement recommendations 54. A communication module118 may generate a request 52 in any suitable manner. In selectedembodiments, the command to initiate one or more requests 52 mayoriginate with a driver 40. For example, a driver 40 may instruct acommunication module 118 to recommend radio stations 24. In suchembodiments, the recommendations 54 may only be obtained from arecommendation module 34 after a corresponding command is initiated bythe driver 40

Alternatively, a communication module 118 may initiate one or morerequests 52. For example, a communication module 118 may periodicallysend a request 52 for recommendations 54. When the recommendations 54are provided, they may stored by a communication module 118.Accordingly, should a driver 40 like to sample one or more of therecommended radio stations 24, he or she may simple instruct thecommunication model to 118 tune a radio of an infotainment system 20 toone or the recommended radio stations 24.

Referring to FIG. 6, a system 10 may support, enable, or execute aprocess 120 in accordance with the present invention. In selectedembodiments, such a process 120 may begin with identifying 122 a driver40, identifying 124 audio content 38 heard to by the driver 40, andidentifying 126 the location of the driver 40 during the time the audiocontent 38 was being heard. A driver model 48 may then be generated 128(or updated 128 if a driver model 48 for the particular driver 40 isalready extant). A recommendation model 50 may also be generated 130 (orupdated 130 if a recommendation model 48 for the particular geographicregion 26 is already extant).

These initial steps 122, 124, 126, 128, 130 may be repeated multipletimes for each driver 40 of a plurality of drivers 40. Over time andwith enough drivers 40 participating, a recommendation model 50 may befully fleshed out. That is, the recommendation model may be built outand updated 130 sufficiently to accurately depict what audio content 38is available from which radio stations 24 within a large geographic areacovering multiple geographic regions 26.

With the recommendation model 50 built out, a request 52 may be received132 to provide one or more recommendations 54. Accordingly, a currentlocation of a driver corresponding to the request 52 may be identified134 and a recommendation model 50 may be used 136 to identify one ormore recommended stations 110. If the driver 40 is located in his or herbase geographic region 26 a, the recommendations 110 may correspond toother or new radio stations 24 a in that region 26 a. Alternatively, ifthe driver 40 is located outside of his or her base geographic region 26a, the recommendations 110 may correspond to radio stations 24 b inanother region 26 b. Thereafter, the one or more recommended radiostations 110 may be communicated 138 to the corresponding driver 40.

The flowcharts in FIGS. 2 and 6 illustrate the architecture,functionality, and operation of possible implementations of systems,methods, and computer program products according to certain embodimentsof the present invention. In this regard, each block in the flowchartsmay represent a module, segment, or portion of code, which comprises oneor more executable instructions for implementing the specified logicalfunction(s). It will also be noted that each block of the flowchartillustrations, and combinations of blocks in the flowchartillustrations, may be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

It should also be noted that, in some alternative implementations, thefunctions noted in the blocks may occur out of the order noted in theFigures. In certain embodiments, two blocks shown in succession may, infact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. Alternatively, certain steps or functions may beomitted if not needed.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrative,and not restrictive. The scope of the invention is, therefore, indicatedby the appended claims, rather than by the foregoing description. Allchanges which come within the meaning and range of equivalency of theclaims are to be embraced within their scope.

What is claimed is:
 1. A method comprising: generating, by a computersystem, multiple models corresponding to multiple drivers such that eachmodel of the multiple models documents content heard by a differentdriver of the multiple drivers; aggregating, by the computer system, themultiple models to form a recommendation model that identifies whichradio stations play which audio content in which geographic regions;receiving, by the computer system from a first driver of the multipledrivers, a request for recommendations; leveraging, by the computersystem in response to the receiving, the recommendation model toidentify at least one radio station that presents content best matchingcontent documented within a first model of the multiple models thatcorresponds to the first driver; and responding, by the computer system,to the request with the at least one radio station.
 2. The method ofclaim 1, wherein: the first driver has a base geographic region in whichthe first driver primarily drives; and the receiving comprisesreceiving, by the computer system, the request from the first driverwhile the first driver is located outside of the base geographicalregion.
 3. The method of claim 2, wherein the computer system comprises:an infotainment system installed in a vehicle driven by the firstdriver; and at least one remote computer connected via a communicationnetwork to the infotainment system.
 4. The method of claim 3, whereinthe generating comprises: monitoring, by the infotainment system, thecontent listened to by the first driver while driving the vehicle; andreporting, by the infotainment system to the at least one networkcomputer, information characterizing the content listened to by thefirst driver while driving the vehicle.
 5. The method of claim 4,wherein the content listened to by the first driver while driving thevehicle comprises local radio programming played through theinfotainment system of the vehicle.
 6. The method of claim 5, whereinthe content listened to by the first driver while driving the vehiclecomprises content played from a mobile device through the infotainmentsystem of the vehicle.
 7. The method of claim 6, wherein the contentlistened to by the first driver while driving the vehicle comprisessatellite radio programming played through the infotainment system ofthe vehicle.
 8. A method comprising: generating, by a computer system, aplurality of driver models, wherein at least one driver model of theplurality of driver models corresponds to each driver of a plurality ofvehicle drivers and documents audio content listened to by the eachdriver while driving; aggregating, by a component of the computersystem, the plurality of driver models to generate a recommendationmodel correlating radio stations, audio content, and geographic regions;the aggregating wherein the component is located remotely with respectto each driver of the plurality of vehicle drivers; receiving, by thecomputer system from a first driver of the plurality of drivers whilethe first driver is in a first geographic region of the geographicregions, a request for recommendations; comparing, by the computersystem, a first driver model of the plurality of driver models withother data contained within the recommendation model, the first drivermodel corresponding to the first driver; identifying, by the computersystem based on the comparing, at least one radio station of the radiostations, wherein the at least one radio station presents audio contentwithin the first geographic region that best matches the audio contentdocumented within the first driver model; and recommending, by thecomputer system, the at least one radio station to the first driver. 9.The method of claim 8, wherein the each driver of the plurality ofvehicle drivers drives most often in a base geographical regioncorresponding to the each driver.
 10. The method of claim 9, wherein theat least one driver model documents audio content listened to by theeach driver while driving in the base geographic region corresponding tothe each driver.
 11. The method of claim 10, wherein the firstgeographic region is different than the base geographic regioncorresponding to the first driver.
 12. The method of claim 11, whereinthe first geographic region is the base geographic region correspondingto a second driver of the plurality of vehicle drivers.
 13. The methodof claim 12, wherein the recommendation model identifies which radiostations play which audio content in which geographic regions.
 14. Themethod of claim 13, wherein the recommendation model further identifieswhich radio stations play which audio content in which geographicregions at which times of the day.
 15. The method of claim 8, whereinthe audio content documented in the generating comprises content playedfrom a mobile device through an infotainment system of a vehicle. 16.The method of claim 8, wherein the audio content documented in thegenerating comprises satellite radio programming played through aninfotainment system of a vehicle.
 17. The method of claim 8, wherein theaudio content documented in the generating comprises local radioprogramming played through an infotainment system of a vehicle.
 18. Themethod of claim 8, wherein the computer system comprises: aninfotainment system installed in a vehicle driven by the first driver;and at least one remote computer connected via a communication networkto the infotainment system.
 19. The method of claim 18, wherein thegenerating comprises: monitoring, by the infotainment system, the audiocontent listened to by the first driver while driving; and reporting, bythe infotainment system to the at least one network computer,information characterizing the audio content listened to by the firstdriver while driving.